This invention relates to a data transmission apparatus and method for retransmitting data when an error occurs in data transmission and in particular to a data transmission apparatus and method optimum for a network where a plurality of data transmission apparatuses are connected to a transmission line and image data is transmitted from the sending data transmission apparatus to the receiving data transmission apparatus over the transmission line for performing subsequent print processing of the image data at the receiving site.
Transmission data to which transmission service is applied is classified into three types of stream data, non-structure file data, and structure file data, as shown in FIG. 1.
(1) The stream data is data with only data sequence on time base. PA1 (2) The file data (non-structure) is data having data top and size (end). PA1 (3) The file data (structure) is data having a structure (=processing device top and size(end)) in addition to the data top and size (end). Image data belongs to this type. PA1 (a) ECC apparatus: A transmission error correction code is attached to transmission data and a transmission error is corrected at the receiver. However, generally the correction capability is limited. PA1 (b) Automatic repeat request: A transmission error detection code is attached to transmission data and a transmission error is detected at the receiver. Data where the transmission error occurred is again transmitted, whereby transmission free from error is accomplished.
Conventional transmission service such as a telephone or telex is to transmit stream data input from moment to moment to a distant location. FIG. 2 shows an apparatus configuration for this service. In the figure, a sending data transmission apparatus 10 and a receiving data transmission apparatus 11 are connected by a transmission line 12. The sending data transmission apparatus 10 and the receiving data transmission apparatus 11 marked in a length to be suitable for transmission control of stream data and perform transmission control.
With the development of data memory devices such as disk drives and memories and data processing apparatuses such as computers, data processed by the data processing apparatus is memorized in the data memory device and the memorized data is exchanged between the data memory devices over a transmission line. The memorized data is file data. FIG. 3 shows an apparatus configuration for this transmission service. In the figure, data processed by a sending data processing apparatus 13 is memorized in a sending data memory device 14 as file data. Data transmission apparatuses 10 and 11 mark a stream data in a length suitable for transmission control of file data and perform transmission control. The sent file data is memorized in a receiving data memory device 15 and is processed by a receiving data processing apparatus 16.
Transmission of file data assumes asynchronous transmission and error correction by retransmission.
(1) Asynchronous transmission
Data created in the sending data processing apparatus 13 is memorized as file data having a finite size. Data transmitted to a receiver is also once memorized before it is transferred to the receiving data processing apparatus 16. The data memory devices 14 and 15 have a sufficient capacity for processing devices, whereby sending data processing, transmission, and receiving data processing can be operated at separate timings.
(2) Error correction by retransmission
An error correction code (ECC) apparatus and an automatic repeat request (ARQ) are available as error correction techniques.
Generally, data processing performed in the receiver does not allow any transmission error in data. Thus, the automatic repeat request is adopted.
Hitherto, generally transmission data has been handled as stream data in asynchronous and error-unallowed transmission of file data. The stream data, which is data having only time base information, has only the simplest data characteristic in transmission. Thus, the transmission apparatus that can transmit stream data becomes the most versatile apparatus that can be applied to transmission of data having various characteristics. The most versatile apparatus means transmission with delay as little as possible while correcting a data error by retransmission. The less average delay for each bit, the larger the transmission technology application range. Therefore, image data of a structure file is also handled as stream data in transmission.
Next, the transmission technology of file data as stream data will be discussed with reference to FIG. 4. File data is read from a sending data memory device in sequence for transmission as stream data. To transmit the stream data without allowing any error by retransmission, it becomes necessary to provide a data device in a length for making an error check. That is, it becomes necessary to attach a transmission structure to the stream data for transmission error control. (See FIG. 6.) In FIG. 4, transmission structure attaching means 20 in a transmitting station reads a file data in a length over a signal line 21 from the sending data memory device 14 (FIG. 3) as one transmission structure. This transmission structure is sent over a signal line 22 to transmission means 23, which then adds an error detection code to the transmission structure and sends the transmission structure to the transmission line 12.
To respond to a retransmission request from the receiver if a transmission error occurs, transmission structure memory means 24 in the transmitting station holds the transmission structure until the normal reception is acknowledged.
Reception means 25 in the receiver receives the transmission structure over the transmission line 12 and performs transmission error detection processing. If the reception means 25 does not detect an error, it transfers the transmission structure and the result indicating no error to transmission structure reception means 27 over a signal line 26. If the reception means 25 detects an error, it transfers only the result indicating an error to the transmission structure reception means 27 over the signal line 26 and discards the transmission structure.
If the transmission structure reception means 27 receives a notification indicating no error, it transfers the transmission structure received from the reception means 25 to conversion-to-stream means 29 over a signal line 28 and returns a notification of the normal reception to the transmitting station over a signal line 30. If the transmission structure reception means 27 receives a notification indicating an errors it returns a request for retransmitting the transmission structure to the transmitting station over a signal line 31.
The conversion-to-stream means 29 converts the transmission structure received from the transmission structure reception means 27 into stream data and writes the stream data into the receiving data memory device 15 (FIG. 3) in sequence over a signal line 35.
Transmission structure transfer acknowledgement means 32 in the transmitting station receives the normal reception notification from the transmission structure reception means 27 over the signal line 30. Then, the transmission structure transfer acknowledgement means 32 instructs the transmission structure attaching means 20 to read the next transmission structure from the sending data memory means 14 (FIG. 3) over a signal line 33.
Retransmission means 34 in the transmitting station receives the retransmission request from the transmission structure reception means 27. Then, the retransmission means 34 reads the transmission structure held in the transmission structure memory means 24 over a signal line 36 and transfers the transmission structure to the transmission means 23, which then adds an error detection code to the transmission structure and again sends the transmission structure to the transmission line 12.
FIG. 5 shows the installation configuration of the means in FIG. 4. In FIG. 5, the installation configuration is divided into an application section 40 and a line interface section 41. The application section 40 is provided with a data processing function 42 and a data memory function 43. It provides functions corresponding to the data processing apparatus 13, 16 and the data memory device 14, 15 in FIG. 3. The line interface section 41 is provided with a packet buffer function 44, a transfer acknowledgement (retransmission) function 45, an error detection function 46, and a transmission function 47.
In the sending data transmission apparatus 10, the packet buffer function 44 provides the transmission structure attaching means 20 and the transmission structure memory means 24. The transfer acknowledgement (retransmission) function 45 provides the transmission structure transfer acknowledgement means 32 and the retransmission means 34. The error detection function 46 and the transmission function 47 provide the transmission means 23.
Likewise, in the receiving data transmission apparatus 11, the packet buffer function 44 provides the conversion-to-stream means 29. The transfer acknowledgement (retransmission) function 45 provides the transmission structure reception means 27. The error detection function 46 and the transmission function 47 provide the reception means 25.
The interface between the application section 40 and the line interface section 41 is called a file interface 48.
On the file interface 48 of the sending station, file data, a file identifier for uniquely identifying each file, and file boundary information indicating the boundary of the file are passed from the application section 40 to the line interface section 41, and a transmission completion file identifier indicating the normal reception of the file at the receiver is passed from the line interface section 41 to the application section 40.
On the file interface 48 of the receiver, normally received file data, a normally received file identifier for uniquely identifying each normally received file, and normally received file boundary information indicating the boundary of the normally received file are passed from the line interface section 41 to the application section 40, and no information is passed from the application section 40 to the line interface section 41. Transmission of the file data is accomplished by the means.
Control overhead required for securing that one transmission structure has been normally received (transfer acknowledgement) is constant. For example, the length of an error detection code attached to one transmission structure, the time of interrupt service executed each time one transmission structure is received, and the like result in overhead. If the length of one transmission structure is shortened, the ratio of the control overhead to the data amount contained in the transmission structure increases and the efficiency lowers. In contrast, the transmission structure length is made long, the ratio of the control overhead to the data amount contained in the transmission structure decreases, but the probability that a transmission error will occur in the transmission structure devices increases and the retransmitted data amount also grows. Therefore, the efficiency may be degraded depending on the transmission error quality of a transmission line. (See FIG. 7.) That is, the transmission structure length involves upper and lower limits and an intermediate value is determined from the transmission error quality and the band width of the transmission line. Generally, a length of several KBytes or less is used.
Next, the transfer acknowledgement operation of a transmission structure having an intermediate length will be discussed. The time interval between the instant at which a transmission station transmits one transmission structure and the instant at which the transmission station secures the normal reception of the transmission structure at the receiver is called a window. (See FIG. 8.) In the window, transmission and reception of the transmission structure are repeated until a transmission structure error is eliminated. (See FIG. 9.) That is, a transmission error correction is made by retransmission. Then, when the normal reception of the transmission structure is secured, the transition to the next transmission structure is made.
Thus, a structure is attached even to stream data only input with the time and the window is slid for each transmission structure, whereby error-free transmission is executed in sequence.
The throughput in the transfer acknowledgement technique of transmission structure devices is found from the following expression:
Expression 1 EQU T=.SIGMA.L/.SIGMA.W EQU W=L/B+D+OH+R
where T is throughput, W is window time, L is transmission structure length, B is transmission band width, D is round trip round trip time, OH is overhead time, and R is retransmission time.
The window time contains the round trip delay time D determined by the distance between the transmitting and receivers and the control overhead time OH required for transfer acknowledgement of one structure described above. Therefore, the longer the distance, the longer the time taken for security of the normal reception of one structure, resulting in degradation of the throughput. If the distance between the transmitting and receivers is short, the control overhead time per structure device is constant, thus the throughput tops out. This problem occurs independently of retransmission.
FIG. 10 is a graph to show the relationship between the throughput and round trip time in an ideal case where no transmission error occurs. The conventional transmission structure transfer acknowledgement technique is intended mainly for a LAN environment, namely, the range in which the propagation time is about 10 msec. Therefore, the throughput is to about 10 MBytes/sec.
On the other hand, the amount of image data transmitted to a printer is several Kbytes to several Mbytes per page of A4-size paper and the image data is printed on a printer at processing speed of about several pages/min. The transmission throughput required for operating the printer consecutively is about several Kbytes/sec to several Mbytes/sec and the conventional transmission structure device transfer acknowledgement technique can be applied.
Recently, however, high-speed and high-definition printers have been developed; it is forecasted that the image data amount will become several hundreds of Mbytes per page of A4-size paper and the print processing speed will become several tens of pages to hundred pages/min. In this case, the transmission throughput required for operating the printer consecutively is raised to several GBytes/sec and the conventional technique described above cannot be applied.
Nowadays, broad-band transmission lines of up to about several hundreds of Mbps are also constructed increasingly on public networks and high-speed transmission between distant locations is being enabled. Then, it is hoped that high-speed image transmission across a wide area will be enabled. However, the propagation on a wide area may become about one second and the conventional technique described above cannot be applied.
Parallel processing of windows may be performed to improve the throughput of the prior art besides guaranteeing error-free transmission. In this apparatus, however, as the throughput is improved or if the propagation time is large, a large amount of transmission structure memory buffer becomes required, resulting in an increase in costs. For example, to hold transmission throughput=100 MBytes/sec in a network with propagation delay time of transfer acknowledgement=1 s, the buffer amount of 100 MBytes/sec.times.1 s=100 MBytes becomes required. This buffer amount furthermore grows with improvement in the transmission throughput or an increase in the propagation time. In the Unexamined Japanese Patent Application Publication No. Hei 4-107660, use of a large-capacity work file, such as a disk, is proposed to cope with the growing transmission structure memory buffer. In doing so, an increase in costs is inevitable.
As we have discussed, in the conventional apparatus for attaching a transmission structure to transmission data and making transfer acknowledgement in the transmission structure devices, the throughput cannot be improved without increasing costs. Therefore, for example, the conventional apparatus is remarkably difficult to cope with high-speed, high-definition print service requiring unprecedented high throughput.
In other words, the prior art cannot sufficiently bring out the powerful processing capability of the receiver associated with the recent technology improvement, etc. That is, the data amount in data processing and the processing speed at the receiver grow because of the recent technology improvement, etc. The processing speed at the receiver exceeds the upper limit of the communication speed from a data supply source to the receiver and the upper limit becomes a bottleneck in drawing out the full data processing capability at the receiver.
It is therefore an object of the invention to provide data transmission techniques for removing the throughput limitations caused by transfer acknowledgement of transmission structure devices executed to realize error-free transmission and providing high throughput for data transmission covering short to long distances.